Hilt еще один DI?

Встречайте Hilt — Dependency Injection (DI) в JetPack, но это не правда, так как Hilt это просто обертка для Dagger2. Для небольших проектов сможет встать более удобным инструментом и хорошо интегрируется с остальными продуктами в JetPack.

Не буду описывать как добавить в проект, все хорошо описано в статье

Зачем?

Dagger2 довольно сложный DI, можно легко запутаться, что и куда поместил. Придумывать бесконечное количество компонентов и увеличивается количество абстракций. И чем больше проект, тем больше увеличивается путаница.

И если хочется использовать Dagger2, но с минимальными усилиями, то для этого как раз и был придуман Hilt.

Что упростили для нас:

  • Готовые компоненты (из названий понятно к чему относятся)
    • ApplicationComponent
    • ActivityRetainedComponent
    • ActivityComponent
    • FragmentComponent
    • ViewComponent
    • ViewWithFragmentComponent
    • ServiceComponent
  • В модуле указываешь в какой компонент добавить
  • Через @AndroidEntryPoint Hilt компилятор

Читать далее